﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

using Microsoft.Practices.Composite.Presentation.Events;
using Might.Infrastructure.DOM;
using Might.Infrastructure.Services;

namespace Might.Infrastructure.Events {

    public struct LoginData {                
        public string Name;
        public string passwd;        
    }

    public class LoginEvent : CompositePresentationEvent<LoginData> {}

    public class LogoutEvent : CompositePresentationEvent<IUserInfo> {}


     public delegate void ProgressEventHandler(
        IProgressToken sender, 	    
	    ProgressEventArgs e
    );
    
     public delegate void EndProgressEventHandler(
        IProgressToken sender, 	    
	    EndProgressEventArgs e
    );

    public class ProgressEvent : CompositePresentationEvent<IProgressToken> {}


    public class OpenFileSystemRootEvent : CompositePresentationEvent<IFileSystemRoot> { }
    
    public class OpenFileEvent : CompositePresentationEvent<IFile> {}
    
    public class FileDownloadedEvent : CompositePresentationEvent<IFile> {}
}
